import os
from pypdf import PdfWriter

def merge_pdfs_in_folder(source_dir, output_filename="merged_output.pdf"):
    """
    合并指定文件夹内所有的PDF文件。
    """
    if not os.path.isdir(source_dir):
        print(f"错误: 目录 '{source_dir}' 不存在。")
        return

    merger = PdfWriter()
    pdf_files = [f for f in os.listdir(source_dir) if f.lower().endswith('.pdf')]
    pdf_files.sort() # 按文件名排序

    if not pdf_files:
        print("未找到任何PDF文件。")
        return

    print("将要合并以下PDF文件:")
    for pdf_file in pdf_files:
        print(f"- {pdf_file}")
        merger.append(os.path.join(source_dir, pdf_file))

    merger.write(output_filename)
    merger.close()
    print(f"\nPDF合并完成！已保存为 '{output_filename}'。")

if __name__ == '__main__':
    # 使用说明:
    # 1. 创建一个名为 'pdfs_to_merge' 的文件夹。
    # 2. 在里面放入至少两个PDF文件 (如 page1.pdf, page2.pdf)。
    # 3. 运行此脚本。
    merge_pdfs_in_folder('pdfs_to_merge')